﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Brjostagjof.Tests.Controllers
{
    class MockBrjostagjofRepository : Brjostagjof.Models.IBrjostagjofRepository
    {
        List<Models.NewsArticle> newsArticles = new List<Models.NewsArticle>();
        List<Models.aspnet_Membership> subscribers = new List<Models.aspnet_Membership>();
        List<Models.Category> category = new List<Models.Category>();
       
        internal void Add(Models.NewsArticle a)
        {
            newsArticles.Add(a);
        }
        internal void AddCategory(Models.Category c)
        {
            category.Add(c);
        }
        public int Count
	    {
		    get
		    {
			    return newsArticles.Count;
		    }
    	}
        public int CountCategory
        {
            get
            {
                return category.Count;
            }
        }
        public IEnumerable<Models.NewsArticle> GetAllNews()
        {
            return newsArticles ;
        }

        public void SaveNewsArticle(Models.NewsArticle newNewsArticle)
        {
            newsArticles.Add(newNewsArticle);
        }

        public void UpdateNewsArticle(int id, Models.NewsArticle changedNewsArticle)
        {
            throw new NotImplementedException();
        }

        public void DeleteNewsArticle(int id)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Article> GetAllArticles()
        {
            throw new NotImplementedException();
        }

        public void SaveArticle(Models.Article newArticle)
        {
            throw new NotImplementedException();
        }

        public void UpdateArticle(int id, Models.Article changedArticle)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Ad> GetAllAds()
        {
            throw new NotImplementedException();
        }

        public void SaveAd(Models.Ad newAd)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Category> GetAllCategories()
        {
            throw new NotImplementedException();
        }

        public void SaveCategory(Models.Category categoryToSave)
        {
            category.Add(categoryToSave);
        }

        public IEnumerable<Models.CommonQuestion> GetAllCommonQuestions()
        {
            throw new NotImplementedException();
        }

        public void SaveCommonQuestion(Models.CommonQuestion faqToSave)
        {
            throw new NotImplementedException();
        }

        public void SaveImage(Models.Image imgToSave)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Image> GetAllImages()
        {
            throw new NotImplementedException();
        }

        public void SaveVideo(Models.Video vidToSave)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Video> GetAllVideos()
        {
            throw new NotImplementedException();
        }


        public void SaveChild(Models.Child childToSave)
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.Child> GetAllChildren()
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.aspnet_User> GetAllUsers()
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.aspnet_Membership> GetAllSubscribers()
        {
            return subscribers;
        }


        public void SaveInfo(Models.RegisterViewModel newUserInfo)
        {
            throw new NotImplementedException();
        }


        public void SaveUserInfo(Models.RegisterViewModel newUserInfo)
        {
            throw new NotImplementedException();
        }


        public void UpdateChild(int id, Models.Child changedChild)
        {
            throw new NotImplementedException();
        }


        public Models.Child GetChildByID(int? id)
        {
            throw new NotImplementedException();
        }


        public Models.Video GetVideoById(int? id)
        {
            throw new NotImplementedException();
        }


        public void SaveSurvey(Models.Survey surveyToSave)
        {
            throw new NotImplementedException();
        }

        public Models.Survey GetNewestSurvey()
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.Image> GetImageByUser(Guid id)
        {
            throw new NotImplementedException();
        }



        public IEnumerable<Models.Image> GetImageByChild(Guid parentID, int childID)
        {
            throw new NotImplementedException();
        }
        public IEnumerable<Models.aspnet_Membership> GetAllAdmins()
        {
            throw new NotImplementedException();
        }
        public IEnumerable<Models.Child> GetChildByParentid(Guid parentid)
        {
            throw new NotImplementedException();
        }



        public IEnumerable<string> GetName(Guid id)
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.aspnet_Membership> GetAllProfessionals()
        {
            throw new NotImplementedException();
        }


        public void SaveYouTube(Models.YouTube ytToSave)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.YouTube> GetAllYT()
        {
            throw new NotImplementedException();
        }

        public Models.YouTube GetYTById(int? id)
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.aspnet_Role> GetAllRoles()
        {
            throw new NotImplementedException();
        }
        string Models.IBrjostagjofRepository.GetName(Guid id)
        {
            throw new NotImplementedException();
        }


        public Models.Article GetArticleById(int id)
        {
            throw new NotImplementedException();
        }


        public void DeleteArticle(int id)
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.aspnet_Membership> GetAllRoleRequests()
        {
            throw new NotImplementedException();
        }
        public Models.Ad GetNewestAd()
        {
            throw new NotImplementedException();
        }


        public Models.aspnet_User GetUserById(Guid id)
        {
            throw new NotImplementedException();
        }


        public Models.aspnet_Membership GetUserInfoById(Guid id)
        {
            throw new NotImplementedException();
        }

        public void UpdateUserInfo(Models.aspnet_Membership userToUpdate)
        {
            throw new NotImplementedException();
        }


        public IEnumerable<Models.NewsArticle> GetAllDeletedNews()
        {
            throw new NotImplementedException();
        }

        public IEnumerable<Models.Article> GetAllDeletedArticles()
        {
            throw new NotImplementedException();
        }
    }
}
